1. Field of Invention
The present invention relates to the field of process management in a workflow environment on computer systems and the field of computerized transaction processing. More particularly, the invention relates to the implementation of computerized event-activities within workflow management systems (WFMS).
2. Definitions
The following definitions of acronyms used throughout the specification may be useful in providing a better understanding of the subject matter of the present invention:
2PC: Two-Phase-Commit Protocol PA1 ACP: Atomic Commit Protocol PA1 DTS: Distributed Transaction Services PA1 ISO: International Standard Organization PA1 ODA: Object Definition Alliance PA1 OMG: Object Management Group PA1 OTS: Object Transaction Services PA1 TM: Transaction Manager PA1 TP: Transaction Processing PA1 WfMC: Workflow Management Coalition PA1 WFMS: Workflow Management System PA1 XID: Transaction Identification
A transactional work item, or transaction in general, are not to be construed to be limited to a local or distributed transaction. Accordingly, a transaction may be of any of these types. Moreover, when referring generally to a transaction, the textual context will define if a general concept is meant or if a transactional work item as a specific embodiment of a transaction is denoted.
3. Description and Disadvantages of Prior Art
A new area of technology, with increasing importance, is the domain of Workflow-Management-Systems (WFMS). WFMS supports the modeling and execution of business processes. Business processes control which piece of work of a network of pieces of work will be performed by whom and which resources are exploited for this work, i.e. a business process describes how an enterprise will achieve its business goals. The individual pieces of work might be distributed across a multitude of different computer systems connected by a network.
The process of designing, developing and manufacturing a new product, and the process of changing or adapting an existing product, presents many challenges to product managers and engineers to bring the product to market for the least cost and within schedule while maintaining or even increasing product quality. Many companies are realizing that the conventional product design process is not satisfactory to meet these needs. They require early involvement of manufacturing engineering, cost engineering, logistic planning, procurement, manufacturing, service and support with the design effort. Furthermore, they require planning and control of product data through design, release and manufacturing.
The correct and efficient execution of business processes within a company, e. g. development or production processes, is of enormous importance for a company and has significant influence on a company's overall success in the market place. Therefore, those processes have to be regarded similar to technology processes and have to be tested, optimized and monitored. The management of such processes is usually performed and supported by a computer-based process or workflow management system.
Copies of the documentation for the following prior art is available through IBM branches:
In D. J. Spoon: "Project Management Environment", IBM Technical Disclosure Bulletin, Vol. 32 , No. 9A, February 1990, pages 250 to 254, a process management environment is described including an operating environment, data elements, and application functions and processes.
In R. T. Marshak: "IBM's FlowMark, Object-Oriented Workflow for Mission-Critical Applications", Workgroup Computing Report (USA), Vol. 17, No. 5, 1994, pages 3 to 13, the object character of IBM FlowMark as a client/server product built on a true object model that is targeted for mission-critical production process application development and deployment is described.
In H. A. Inniss and J. H. Sheridan: "Workflow Management Based on an Object-Oriented Paradigm", IBM Technical Disclosure Bulletin, Vol. 37, No. 3, March 1994, page 185, other aspects of object-oriented modeling on customization and changes are described.
In F. Leymann and D. Roller: "Business Process Management with FlowMark", Digest of papers, Cat. No. 94CH3414-0, Spring COMPCON 94, 1994, pages 230 to 234, the state-of-the-art computer process management tool IBM FlowMark is described. The meta model of IBM FlowMark is presented as well as the implementation of IBM FlowMark. The possibilities of IBM FlowMark for modeling of business processes as well as their execution are discussed. The product IBM FlowMark is available for different computer platforms.
In F. Leymann: "A Meta Model to Support the Modeling and Execution of Processes", Proceedings of the 11th European Meeting on Cybernetics and System Research EMCR92, Vienna, Austria, April 21 to 24, 1992, World Scientific 1992, pages 287 to 294, a meta model for controlling business processes is presented and discussed in detail.
The "IBM FlowMark for OS/2", document number GH 19-8215-01, IBM Corporation, 1994, represents a typical modern, sophisticated and powerful workflow management system. It supports the modeling of business processes as a network of activities; refer for instance to "Modeling Workflow", document number SH 19-8241, IBM Corporation, 1996. This network of activities, the process model, is constructed as a directed, acyclic, weighted, colored graph. The nodes of the graph represent the activities or workitems which are performed. The edges of the graph, the control connectors, describe the potential sequence of execution of the activities. Definition of the process graph is via the IBM FlowMark Definition Language (FDL) or the built-in graphical editor. The runtime component of the workflow manager interprets the process graph and distributes the execution of activities to the right person at the right place, e. g. by assigning tasks to a work list according to the respective person, wherein said work list is stored as digital data within said workflow or process management computer system.
In F. Leymann and W. Altenhuber: "Managing Business Processes as an Information Resource", IBM Systems Journal, Vol. 32(2), 1994, the mathematical theory underlying the IBM FlowMark product is described.
In D. Roller: "Verifikation von Workflows in IBM FlowMark", in J. Becker und G. Vossen (Hrsg.): "Geschaeftsprozessmodellierung und Workflows", International Thompson Publishing, 1995, the requirement and possibility of the verification of workflows is described. Furthermore the feature of graphical animation for verification of the process logic is presented as it is implemented within the IBM FlowMark product.
For implementing a computer-based process management system, firstly the business processes have to be analyzed and, as the result of this analysis, a process model has to be constructed as a network of activities corresponding to the business process. In the IBM FlowMark product, the process models are not transformed into at executable form. At run time, an instance of the process is created from the process model, called a process instance. This process instance is then interpreted dynamically by the IBM FlowMark product.
The concept of events as such, on the other hand, is known in the state of the art. Events, for example, play a role in database management systems. In database management systems, event/trigger mechanism have been developed for consistency checking in databases as described, for instance, in A. M. Kotz, Triggermechanismen in Datenbanksystemen, Springer Verlag, Berlin 1989. Also, events play a central role in the notion of active databases. In workflow systems, the semantics of an event is quite imprecise as applied by A. W. Scheer, Wirtschaftsinformatik, Springer Verlag, Berlin 1994, where the event can be a termination condition of a previous activity or an external signal, such as the arrival of a letter or, in general, an incident occurring independent from an activity informing an activity asynchroneously on some type of change. According to this prior art approach, an event is restricted to a quite limited spectrum of possible sources. The relationship between the activity and the event may be such that the activity requires that the event is signaled to it otherwise the activity will not continue beyond a certain point. It is also possible that an event signaled to an activity will be perceived by that activity and depending on that perception might modify the activity's ongoing processing. An event might result from anywhere within a computer system or even within networks of computer systems. Also, the source of an event might be a hardware device, some software construct, a human interacting with a running computer system and so forth.
Whatever the precise merits, features and advantages of the above cited references, none of them achieves or fulfills the purposes of the present invention. Accordingly, it is an object of the present invention to tightly integrate event mechanisms into workflow management systems. This and other objects are achieved by the detailed description that follows.